package co.edu.uniquindio.sicorrespondencia.entities;

import java.io.Serializable;

import javax.persistence.*;

import org.jboss.seam.annotations.Name;

import co.edu.uniquindio.sicorrespondencia.enums.RolDocente;


/**
 * Esta entidad representa el docente y sus datos correspondientes
 * 
 * @author Tannia Rosero
 * @author Sofia Agudelo
 * 
 */
@Entity
@Table(name = "detalleDocenteTG")
@Name("docente_tg")
public class DetalleDocente_TG implements Serializable{
	private static final long serialVersionUID = 1L;

	@Id
	@GeneratedValue
	@Column(name = "idDetalleDocTG")
	private Long idDetalleDocTG;
	
	@GeneratedValue(strategy = GenerationType.AUTO)
	@ManyToOne (fetch = FetchType.LAZY)
	private Docente codDocente;


	@GeneratedValue(strategy = GenerationType.AUTO)
	@ManyToOne (fetch = FetchType.LAZY)
	private TrabajoGrado idTG;	

	
	private RolDocente rolDocente;


	/**
	 * Este metodo permite obtener codigoDocente de la clase
	 * @return el codigoDocente
	 */
	public Docente getCodDocente() {
		return codDocente;
	}


	/**
	 * Este metodo permite fijar el codigoDocente de la entidad
	 * @param codigoDocente es el codigoDocente a fijar
	 */
	public void setCodDocente(Docente codigoDocente) {
		this.codDocente = codigoDocente;
	}


	/**
	 * Este metodo permite obtener idTG de la clase
	 * @return el idTG
	 */
	public TrabajoGrado getIdTG() {
		return idTG;
	}


	/**
	 * Este metodo permite fijar el idTG de la entidad
	 * @param idTG es el idTG a fijar
	 */
	public void setIdTG(TrabajoGrado idTG) {
		this.idTG = idTG;
	}


	/**
	 * Este metodo permite obtener rolDocente de la clase
	 * @return el rolDocente
	 */
	public RolDocente getRolDocente() {
		return rolDocente;
	}


	/**
	 * Este metodo permite fijar el rolDocente de la entidad
	 * @param rolDocente es el rolDocente a fijar
	 */
	public void setRolDocente(RolDocente rolDocente) {
		this.rolDocente = rolDocente;
	}


	/**
	 * Este metodo permite obtener idDetalleDocTG de la clase
	 * @return el idDetalleDocTG
	 */
	public Long getIdDetalleDocTG() {
		return idDetalleDocTG;
	}


	/**
	 * Este metodo permite fijar el idDetalleDocTG de la entidad
	 * @param idDetalleDocTG es el idDetalleDocTG a fijar
	 */
	public void setIdDetalleDocTG(Long idDetalleDocTG) {
		this.idDetalleDocTG = idDetalleDocTG;
	}
	
	
}